Godot 4.0からGodot 3.5にバックポートされた、Tween機能の改善
https://www.youtube.com/watch?v=dPYRmzu0cgA
単純に、マウスクリックした位置にSpriteを移動させる Tween の例
code:gd
func _unhandled_input(event: InputEvent) -> void:
if event is InputEventMouseButton and event.pressed:
move_to_mouse()
func move_to_mouse() -> void:
var tween := create_tween()
tween.tween_property(self, "global_position", get_global_mouse_position(), 1.0)
これだけでOK.
tween.start()を呼び出さなくても動いてくれる。
初期値や Ease関連を省いてもok
Easeの設定をしたい場合は、create_tween()時にメソッドチェーンで設定可能
var tween := create_tween().set_trans(Tween.TRANS_QUINT).set_ease(Tween.EASE_OUT)
並行して回転処理も入れたい場合は、parallel() で繋げることが可能
code:gd
var target_rotation := global_position.direction_to(get_global_mouse_position()).angle() + PI / 2.0
tween.parallel().tween_property(self, "rotation", target_rotation, 0.5)
もし parallel() を入れなかった場合は、移動処理の後に回転処理が実行される。
動画の後半でちらっと紹介されているサンプル